Method and apparatus for an independent positioning system and augmentation of GPS

ABSTRACT

A method and an apparatus for a positioning system and augmentation of a global positioning system (GPS) are provided. The system includes at least one transmitter and at least one transceiver. The transceiver is able to calculate a position of the transceiver relative to the transmitter using information sent by the transmitter to the transceiver.

FIELD OF THE INVENTION

[0001] The present invention relates generally to the field of positioning systems and, more particularly, to a method and apparatus for an independent positioning system and augmentation of a global positioning system (GPS).

BACKGROUND OF THE INVENTION

[0002] Currently, there are many devices today that utilize the technology of the global positioning system. The global positioning system (GPS) is a positioning system based on twenty-four orbiting satellites that broadcast a precise data signal to a number of GPS receivers. A single GPS receiver can calculate its position (latitude and longitude), altitude, velocity, heading and precise time of day using data signals from at least four GPS satellites. Thus, these GPS receivers can locate themselves anywhere on the planet.

[0003] Each satellite transmits two signals, an L1 signal and an L2 signal. The L1 signal is modulated with two pseudo-random noise codes, the protected code and the course/acquisition (C/A) code. Each satellite has its own unique pseudo-random noise code. Civilian navigation receivers only use the C/A code on the L1 frequency. In a positioning device that utilizes the GPS, a GPS receiver measures the time required for the signal to travel from the satellite to the receiver. This done by the GPS receiver generating its own pseudo-random noise code identical to the satellite's code and precisely synchronizing the two codes to determine how long the satellite's code took to reach the GPS receiver. This process is carried out with at least four satellites so that any error in the calculation of position and time is minimized.

[0004] A positioning device utilizing GPS is an effective tool in finding a location or determining a position. However, a device utilizing GPS has many limitations. One significant limitation is that GPS is generally unsuitable for indoor positioning applications since a direct view of the GPS satellites is not available. Therefore, it is desirable to have an independent positioning system utilizing technology other than the GPS or working in conjunction with GPS that is functional indoors and in other locations where GPS is not functional.

[0005] Another problem with GPS systems is that many types of errors may occur if the information sent to the GPS receivers is slightly inaccurate. For instance, ephemeric errors are errors caused by gravitational pulls on the satellites from the moon, sun, and the pressure of solar radiation. These errors affect the satellite's orbit. Other errors also exist. A GPS receiver with this type of information may use this information to calculate position and time with greater accuracy. Therefore, it is desirable to have a positioning system utilizing technology in conjunction with GPS that supplies augmentation data to help GPS receivers correct errors that may occur in calculating time and location.

BRIEF DESCRIPTION OF THE DRAWINGS

[0006] The present invention is illustrated by way of example, and not limitation, in the figures of the accompanying drawings in which:

[0007]FIG. 1 illustrates an example of one embodiment of a computer system;

[0008]FIG. 2 illustrates an embodiment of an independent positioning system,

[0009]FIG. 3 illustrates a block diagram of an embodiment of a transceiver;

[0010]FIG. 4 illustrates an embodiment of a positioning system;

[0011]FIG. 5 illustrates a diagram of an alternative embodiment of a transceiver;

[0012]FIG. 6 illustrates a block diagram of an alternative embodiment of a transceiver;

[0013]FIG. 7 illustrates a flow chart of a process of determining a position of a transceiver; and

[0014]FIG. 8 illustrates a flow chart of an alternative process of determining a position of a transceiver.

DETAILED DESCRIPTION

[0015] A method and an apparatus for an independent positioning system and augmentation of a global positioning system (GPS) are described. In the following detailed description of the present invention, numerous specific details are set forth in order to provide a thorough understanding of the present invention. However, it will be apparent to one skilled in the art that the present invention may be practiced without these specific details. In some instances, well-known structures and devices are shown in block diagram form, rather than in detail, in order to avoid obscuring the present invention. There are several different ways to implement an independent positioning system Several embodiments are described herein. However, there are other ways that would be apparent to one skilled in the art that may be practiced without specific details.

[0016] The method and apparatus disclosed herein may be integrated into advanced Internet- or network-based knowledge systems as related to information retrieval, information extraction, and question and answer systems. FIG. 1 illustrates an example of one embodiment of a computer system. The system shown has a processor 101 coupled to a bus 102. Also shown coupled to the bus 102 is a memory 103 which may contain instructions 104. Additional components shown coupled to the bus 102 are a storage device 105 (such as a hard drive, floppy drive, CD-ROM, DVD-ROM, etc.), an input device 106 (such as a keyboard, mouse, light pen, bar code reader, scanner, microphone, joystick, etc.), and an output device 107 (such as a printer, monitor, speakers, etc.). Of course, an exemplary computer system could have more components than these or a subset of the components listed.

[0017] The method described above can be stored in the memory of a computer system (e.g., set top box, video recorders, etc.) as a set of instructions to be executed, as shown by way of example in FIG. 1. In addition, the instructions to perform the method described above could alternatively be stored on other forms of machine-readable media, including magnetic and optical disks. For example, the method of the present invention could be stored on machine-readable media, such as magnetic disks or optical disks, which are accessible via a disk drive (or computer-readable medium drive). Further, the instructions can be downloaded into a computing device over a data network in a form of compiled and linked version.

[0018] Alternatively, the logic to perform the methods as discussed above, could be implemented in additional computer and/or machine readable media, such as discrete hardware components as large-scale integrated circuits (LSI's), application-specific integrated circuits (ASIC's), firmware such as electrically erasable programmable read-only memory (EEPROM's); and electrical, optical, acoustical and other forms of propagated signals (e.g., carrier waves, infrared signals, digital signals, etc.).

[0019]FIG. 2 illustrates an embodiment of a stand-alone positioning system 200. The positioning system 200 comprises at least one transceiver 210 and at least one transmitter 220. In FIG. 2, one transceiver 210 and four transmitters 220 are shown. The transceiver 210 determines its position relative to the four transmitters 220. In alternative embodiments, more than four transmitters may be used. The transmitters 220 may be manually installed anywhere for this system 200 to function. An example of such an application is a building that has four transmitters installed in the four corners of the building. As a transceiver moves around the building, the position of that transceiver can be calculated relative to the transmitters. In another example, automobiles equipped with a transceiver and a transmitter can establish a relative positioning framework with respect to one another. This would establish a “virtual bumper” where the “virtual bumper” provides an area of safety around each vehicle, and each vehicle can avoid collision by using the virtual bumper and distance information of the other vehicles.

[0020]FIG. 3 illustrates an embodiment of a transceiver. The transceiver 310 includes a radio frequency unit 322, a baseband processing unit 324, and a correlator 330. The radio frequency unit 322 and the baseband processing unit 324 are a part of a short-range wireless communications standard 320 of the transceiver 310. The transceiver 310 receives a first code 345 from a transmitter 340 via the short-range wireless communications standard 320. The first code 345 is received by the radio frequency unit 322 of the transceiver 310. The transceiver 310 generates a second code to correspond to that first code 345. In one embodiment, the first code 345 and the second code are noise codes. In alternative embodiments, the codes may be another type of signal. The correlator 330 on the transceiver 310 uses both of these codes to determine the position of that transceiver 310 relative to that transmitter 340.

[0021] In one embodiment, the correlator compares the two codes by calculating a time shift between the first code and the second code. The correlator does this by multiplying the two signals together, and determining if there is a correlation peak. The output is sent to a circuit that shifts the two codes in time to determine a time shift between the codes. The time shift is used to determine the distance between the transceiver and the transmitter. The transceiver can use three first codes transmitted by three transmitters to determine its 3-dimensional position with respect to the three transmitters. However, using this type of calculation, the accuracy would be greater if at least four transmitters are used by the transceiver to determine its position. This would correct any errors with respect to the time measurements used by the transceiver. In alternative embodiments, other types of calculation methods may be used to determine the transceiver's position relative to the transmitter.

[0022] In one embodiment the short-range wireless communications standard is a Bluetooth™ standard. Bluetooth™ is a protocol of a short-range (10 meter) frequency-hopping radio link between devices. A device using a Bluetooth™ standard eliminates the need for wires and cables while allowing for data and voice communication interaction between that device and another device using the Bluetooth™ standard. Bluetooth™ technology supports point to multiple point connections so that up to seven devices can be set to communicate with one controller device and with each other. This is called a piconet and several of these piconets can be established and linked together to form scatternets to allow communication among these configurations. In one embodiment, several transceivers using the Bluetooth™ standard can determine position information by communicating with several transmitters also using the Bluetooth™ standard and with each other.

[0023] In an alternative embodiment, the short-range wireless communications standard is an IEEE 802.11b standard. The IEEE 802.11b standard is a wireless local area network (LAN) standard developed by the Institute of Electrical and Electronic Engineering (IEEE) committee in order to specify an “over the air” interface between a wireless client and a base station or access point, as well as among wireless clients. A wireless LAN (WLAN) is a data transmission system designed to provide location-independent network access between computing devices by using radio waves rather than a cable infrastructure. In one embodiment, the transceivers could use the IEEE 802.11b standard to communicate with transmitters using the IEEE 802.11b standard and with each other to determine position relative to the transmitters.

[0024]FIG. 4 illustrates an alternative embodiment of a positioning system This positioning system 400 incorporates a global positioning system (GPS) with an independent positioning system The positioning system 400 comprises at least one transceiver 410, a number of transmitters 420, and a number of GPS satellites 430. In FIG. 4, four transmitters and four GPS satellites are shown. The transceiver 410 determines its position relative to the transmitters 420 and the GPS satellites 430. In alternative embodiments, any number of transmitters and GPS satellites may be used by the transceiver to determine its position. An example of this type of application would be a plurality of buildings that have transmitters installed in each building. A user traveling with a transceiver would be able to visit each building and determine the position of the transceiver by using information from both the transmitters and the GPS satellites. As the user travels outside with the transceiver, the GPS satellites may be used to determine the location of the transceiver. Inside each building, the location of the transceiver may be determined using the position calculated with information from the GPS satellites and combining that position with information from the transmitters in that building. This would allow the transceiver to establish a new position of the transceiver within that building. Thus, the user is able to determine a new position while traveling between buildings as well as in each building, and this is done using both the GPS and the independent positioning system.

[0025]FIG. 5 illustrates an embodiment of a transceiver 510. In this embodiment, certain components of a short-range communications standard transceiver 520 and a GPS receiver 540 are combined to implement a positioning system that uses both a GPS system and an independent positioning system The short-range communications standard transceiver 520 comprises a radio frequency (RF) unit 522, an analog to digital unit 524, and a baseband processing unit 526. The GPS receiver 540 comprises a radio frequency (RF) unit 532, an analog to digital unit 534, and a baseband processing unit 536. In the embodiment shown in FIG. 5, parallels may be drawn between these units in order to form one transceiver 510.

[0026]FIG. 6 illustrates an embodiment of a positioning system that incorporates a GPS system and a independent positioning system that uses a short-range communications standard. The transceiver 610 comprises a radio frequency (RF) unit 622, a baseband processing unit 624, and a correlator 630. The transceiver 610 receives a first code 645 from a transmitter 640 via the short-range wireless communications standard. The first code 645 is received by the radio frequency unit 622 of the transceiver 610. The transceiver 610 generates a second code to correspond to that first code 645. The correlator 630 on the transceiver 610 uses both of these codes to determine the position of that transceiver 610 relative to that transmitter 640. Similarly, the transceiver 610 receives a first noise code 655 from a GPS satellite 650. The transceiver 610 generates a second noise code to correspond to the noise code 655 and uses these codes to determine the position of the transceiver 610 relative to the GPS satellite 650.

[0027] In one embodiment, the correlator compares each set of codes, the first code to the second code and the first noise code to the second noise code, by calculating a time shift between the respective codes. The correlator does this by multiplying each two corresponding codes together, and determining if there is a correlation peak. The output is sent to a circuit that shifts each two corresponding codes in time to determine the time shift. The time shift is used to determine the distance between the transceiver and the transmitter and the distance between the transceiver and the GPS satellite. The transceiver can use three first codes transmitted by three transmitters to determine its 3-dimensional position with respect to the three transmitters. Similarly, the transceiver can use three noise codes transmitted by three GPS satellites to determine its 3-dimensional position with respect to the three GPS satellites. However, using this type of calculation, the accuracy would be greater if at least four transmitters and at least four GPS satellites are used by the transceiver to determine its position. This would correct any errors with respect to the time measurements used by the transceiver. In alternative embodiments, other types of calculation methods may be used to determine the transceiver's position relative to the transmitters and GPS satellites.

[0028] In one embodiment, augmentation data may also be exchanged between the GPS system and a short-range wireless communications interface on a transceiver. This information can include, but is not limited to differential corrections, wide area augmentation system (WAAS) corrections, satellite ephemeris data, doppler shift estimates, satellite snapshot data, and terrain maps. This type of augmentation data may allow the transceiver to track weaker signals from the transmitters of the stand-alone positioning system as well as the signals from the GPS satellites.

[0029] In one embodiment, the positioning system may be combined with other networks or systems. An example of this type of combination is a positioning system combined with an Inertial Navigation System (INS). Generally, an INS includes one or more accelerometers, gyroscopes, and/or inclinometer sensors. A positioning system in combination with INS may determine the position of the transceiver using information from the transmitters as well as following the trajectory of the transceiver as it moves. In one embodiment, the transceiver can reinitialize its position when the transceiver is close to another transceiver to avoid errors created by the INS.

[0030]FIG. 7 illustrates a flowchart of a process of determining a position of a transceiver. Step 710 includes sending a first code from a transmitter to a transceiver via a short-range wireless communications standard. In steps 720 and 730, the transceiver generates a second code to correspond to the first code and compares the first code with the second code. Step 740 involves calculating a distance between the transmitter and the transceiver. Step 750 is determining a position of the transceiver relative to the transmitter using the calculated distance between the transmitter and the transceiver.

[0031]FIG. 8 illustrates a flowchart of an alternative process of determining a position of a transceiver. Step 810 includes processing a number of first codes sent by a plurality of transmitters to a transceiver. Step 820 includes processing a number of second codes generated by the transceiver. Each second code corresponds to a first code. In steps 830 and 840, the transceiver processes a number of first noise codes sent by GPS satellites to the transceiver and a number of second noise codes generated by the transceiver. The second noise codes correspond to the first noise codes. A position of the transceiver relative to the transmitters and GPS satellites is determined in step 850. In step 860, augmentation data is exchanged between the transceiver and the GPS to determine the position of the transceiver relative to the transmitters and GPS satellites.

[0032] A method and an apparatus for a positioning system and augmentation of GPS have been described. Although the present invention has been described with reference to specific exemplary embodiments, it will be evident that various modifications and changes may be made to these embodiments without departing from the broader spirit and scope of the invention. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense. 

What is claimed is:
 1. An apparatus comprising: a transceiver to receive a first code from a transmitter via a short-range wireless communications standard, the transceiver generating a second code; and a correlator on the transceiver that uses the first and second codes to find the distance between the transceiver and the transmitter, the correlator using the distance to determine a position of the transceiver relative to the transmitter.
 2. The apparatus of claim 1 wherein the transceiver receives first codes from at least four different transmitters, the transceiver using the first codes to determine a position of the transceiver relative to the four transmitters.
 3. The apparatus of claim 1 wherein the transceiver further comprises a radio frequency unit with a radio and a baseband processing unit.
 4. The apparatus of claim 3 wherein the radio frequency unit of the transceiver receives the first code sent by the transmitter.
 5. The apparatus of claim 3 wherein the baseband processing unit processes a noise code received from a satellite in a global positioning system (GPS), the transceiver using the noise code to determine a position of the transceiver relative to the satellite.
 6. The apparatus of claim 5 wherein the transceiver includes a short-range wireless communication interface to exchange augmentation data with the GPS.
 7. The apparatus of claim 6 wherein the augmentation data is selected from the group consisting of differential corrections, wide area augmentation system (WAAS) corrections, satellite ephemeris data, doppler shift estimates, satellite snapshot data, and terrain maps.
 8. The apparatus of claim 1 wherein the short-range wireless communications standard is Bluetooth™.
 9. The apparatus of claim 1 wherein the short-range wireless communications standard is IEEE 802.11b.
 10. The apparatus of claim 1 wherein the first and second codes are noise codes.
 11. A system comprising: a transmitter to transmit a first code corresponding to the transmitter using a short-range wireless communications standard; a transceiver having a radio frequency (RF) unit with a radio to receive the first code, the transceiver generating a second code; a baseband processing unit on the transceiver, the baseband processing unit processing a noise code received from a satellite in a global positioning system (GPS); and a correlator on the transceiver, the correlator using the first and second code to determine a first distance between the transceiver and the transmitter, the correlator determining a first position of the transceiver relative to the transmitter, and the correlator determining a second distance between the transceiver and the satellite in order to determine a second position of the transceiver relative to the satellite.
 12. The system of claim 11 wherein the transceiver receives first codes from at least four different transmitters, the transceiver using the first codes to determine a position of the transceiver relative to the four transmitters.
 13. The system of claim 11 wherein each transceiver receives GPS noise codes from at least four different satellites, the transceiver using the GPS noise codes to determine a position of the transceiver relative to the four satellites.
 14. The system of claim 13 wherein the transceiver includes a short-range wireless communication interface to exchange augmentation data with the GPS.
 15. The system of claim 14 wherein the augmentation data is selected from the group consisting of differential corrections, wide area augmentation system (WAAS) corrections, satellite ephemeris data, doppler shift estimates, satellite snapshot data, and terrain maps.
 16. The system of claim 11 wherein the short-range wireless communications standard is Bluetooth™.
 17. The system of claim 11 wherein the short-range wireless communications standard is IEEE 802.11b.
 18. The system of claim 11 wherein the first and second codes are noise codes.
 19. A method comprising: sending a first code from a transmitter to a transceiver via a short-range wireless communication as standard; generating a second code to correspond to the first code; comparing the first code with the second code; calculating a distance between the transmitter and the transceiver; and determining a position of the transceiver relative to the transmitter using the calculated distance between the transmitter and the transceiver.
 20. The method of claim 19 further comprising the steps of: receiving first codes from at least four different transmitters; and determining a position of the transceiver relative to the four transmitters.
 21. The method of claim 19 further comprising the steps of: sending noise codes from a satellite in a global positioning system (GPS) to the transceiver; and processing the noise code to determine a position of the transceiver relative to the satellite.
 22. The method of claim 21 wherein the step of processing the noise code is done by a baseband processing unit of the transceiver.
 23. The method of claim 21 further comprising the steps of: receiving noise codes from at least four satellites; and determining the position of the transceiver relative to the four satellites.
 24. The method of claim 23 further comprising the step of exchanging augmentation data between the GPS and a short-range wireless communications interface on the transceiver.
 25. The method of claim 24 wherein the augmentation data is selected from the group consisting of differential corrections, wide area augmentation system (WAAS) corrections, satellite ephemeris data, doppler shift estimates, satellite snapshot data, and terrain maps.
 26. The method of claim 19 wherein the short-range wireless communications standard is Bluetooth™.
 27. The method of claim 19 wherein the short-range wireless communications standard is IEEE 802.11b.
 28. The method of claim 19 wherein the first and second codes are noise codes.
 29. A method comprising: processing a number of first codes sent by a plurality of transmitters to a transceiver; processing a number of second codes generated by the transceiver, each second code generated to correspond to each first code; processing a number of first noise codes sent by a number of satellites in a global positioning system (GPS) to the transceiver; processing a number of second noise codes generated by the transceiver, each second noise code generated to correspond to each first noise code; and determining a position of the transceiver relative to the transmitters and the GPS.
 30. A machine-readable storage medium tangibly embodying a sequence of instructions executable by the machine to perform a method, the method comprising: processing a number of first codes sent by a plurality of transmitters to a transceiver; processing a number of second codes generated by the transceiver, each second code generated to correspond to each first code; processing a number of first noise codes sent by a number of satellites in a global positioning system (GPS) to the transceiver; processing a number of second noise codes generated by the transceiver, each second noise code generated to correspond to each first noise code; and determining a position of the transceiver relative to the transmitters and the GPS. 